package com.aipp.mall.h5.domain.entity;

import com.aipp.mall.common.anno.Note;
import com.aipp.mall.common.model.BaseAudit;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serial;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 订单售后对象 oms_aftersale
 *
 * @author zcc
 */
@EqualsAndHashCode(callSuper = true)
@Data
@TableName("oms_aftersale")
public class AfterSale extends BaseAudit implements Serializable {

    @Serial
    private static final long serialVersionUID = -1274109769557441567L;

    @Note("ID")
    @TableId(type = IdType.ASSIGN_ID)
    private Long id;

    @Note("MEMBER_ID")
    private Long memberId;

    @Note("订单id")
    private Long orderId;

    @Note("退款金额")
    private BigDecimal returnAmount;

    @Note("售后类型：1：退款，2：退货退款")
    private Integer type;

    @Note("申请状态：0->待处理；1->退货中；2->已完成；3->已拒绝")
    private Integer status;

    @Note("处理时间")
    private LocalDateTime handleTime;

    @Note("退货数量")
    private Integer quantity;

    @Note("原因")
    private String reason;

    @Note("描述")
    private String description;

    @Note("凭证图片，以逗号隔开")
    private String proofPics;

    @Note("处理备注")
    private String handleNote;

    @Note("处理人员")
    private String handleMan;

    @Note("退款快递公司")
    private String refundWpCode;

    @Note("退货快递号")
    private String refundWaybillCode;

}
